import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import postcsspxtoviewport8plugin from "postcss-px-to-viewport-8-plugin";

// https://vite.dev/config/
export default defineConfig({
  plugins: [react()],
  server: {
    proxy: {
      "/api": {
        target: "http://113.44.139.133:8005", // 代理目标地址
        changeOrigin: true, // 是否开启跨域
        rewrite: (path) => path.replace(/^\/api/, ""), // 重写路径
      },
      "/xx": {
        target: "https://www.baidu.com/", // 代理目标地址
        changeOrigin: true, // 是否开启跨域
        rewrite: (path) => path.replace(/^\/xx/, ""), // 重写路径
      },
    },
  },
  css: {
    postcss: {
      plugins: [
        postcsspxtoviewport8plugin({
          unitToConvert: "px",
          viewportWidth: 375,
          unitPrecision: 5,
          propList: ["*"],
          viewportUnit: "vw",
          fontViewportUnit: "vw",
          selectorBlackList: [],
          minPixelValue: 1,
          mediaQuery: false,
          replace: true,
          exclude: [],
          landscape: false,
          landscapeUnit: "vw",
          landscapeWidth: 568,
        }),
      ],
    },
  },
});

// px 固定单位
// em 相对于父元素字体大小的单位
// rem 相对于根元素(html)字体大小的单位，
// lib-flexible这款插件就是通过动态改变根元素字体大小来实现的，是淘宝的解决适配的方案
// 设计稿宽 750/10=根元素字体大小 75px
// 在设计稿上实际测量宽度100px: 100/75=1.3333rem

//vw 相对于视口宽度的单位, 1vw=视口宽度的百分之一, 100vw=视口宽度

//10px 10/75=10/3.75vw
